<?php

class View {
	 
	static $plantillas = array('default'=>'default','error'=>'error');	//listado nombre de las plantillas

	/**
	* Renderiza la vista deseada 
	* @aux - define el nombre abreviado de la plantilla.Si es null plantilla default
	* @path - ruta de la vista que deseamos mostrar
	* @data - informacion que enviamos a la vista
	*/
	public static function render($aux = null,$path,$data = false, $error = false){
	
		if(empty($aux)){$aux="default";}
		//carga la array que relaciona los codigos de idioma recibio via parametro y el nombre de la plantilla
		$plantilla = self::$plantillas;
		//comprueba existencia plantilla 
		self::existePlantilla($aux);
		$p = $plantilla[$aux];
		//hace render header de la plantilla segun el parametro recibido
		require "app/plantillas/$p/header.php"; 
		//render del contenido de la vista
		require "app/vistas/$path.php";  
		//hace render footer de la plantilla segun el parametro recibido
		require "app/plantillas/$p/footer.php"; 
	}
	
	
	
	/**
	 * comprueba si la plantilla seleccionada a cargar existe
	 * @param unknown $plantilla
	 */
	function existePlantilla($plantilla){
		if(!array_key_exists($plantilla,self::$plantillas)){
			if(ENVIRONMENT =='production'){
				header("Location: ".DIR."error");
			}else{
				echo("<p>plantilla selecionada para este idioma no existe</p>");
			}
		}
	}
}

?>